package fr.gaulupeau.apps.Poche.tts.engine;

import android.content.Context;
import android.speech.tts.TextToSpeech;
import android.speech.tts.UtteranceProgressListener;

import java.util.Locale;

import fr.gaulupeau.apps.Poche.tts.TtsConfig;

public interface TtsEngine {

    boolean onCreate(Context context, TtsConfig settings, TextToSpeech.OnInitListener listener);

    void shutdown();

    String engineName();

    void speak(CharSequence convertedText, int queueMode, String utteranceId);

    void stop();

    void onConfigChanged();

    void setSpeed(float speed);

    void setPitch(float pitch);

    void setLanguage(Locale convertVoiceNameToLocale);

    void setSpeechRate(float speed);

    void setOnUtteranceProgressListener(UtteranceProgressListener utteranceProgressListener);
}
